// 9165
/**
 * 传入对象返回函数，如果传入参数中包含该对象则返回真
 *   /* example
         * const filter = require('./filter');
         *
         * const objects = [
         *     { a: 1, b: 2, c: 3 },
         *     { a: 4, b: 5, c: 6 }
         * ];
         * filter(objects, matcher({ a: 4, c: 6 })); // -> [{a: 4, b: 5, c: 6}]
         *         /* dependencies extendOwn isMatch types
 * @param {*} attrs 要匹配的对象
 * @returns 真值检测函数
 */
export function matcher (attrs) {
  attrs = extendOwn({}, attrs);
  return function (obj) {
    return isMatch(obj, attrs);
  };
}